f214820d864f68c745344db96b114f224cd4242c,opennms-snmp/opennms-snmp-api/src/main/java/org/opennms/netmgt/snmp/TableTracker.java,TableTracker,handleCompleteRows,#,124
Before Change
private void handleCompleteRows() {
if (m_callback != null) {
if (hasRow()) {
boolean complete = isFinished();
List<SnmpInstId> keys = new ArrayList<SnmpInstId>(m_pendingData.keySet());
List<SnmpRowResult> callbackRows = new ArrayList<SnmpRowResult>();
for (int i = (keys.size() - 1); i >= 0; i--) {
SnmpInstId key = keys.get(i);
SnmpRowResult row = m_pendingData.get(key);
if (complete || (row != null && row.isComplete())) {
complete = true;
m_pendingData.remove(key);
callbackRows.add(0, row);
}
}
for (SnmpRowResult row : callbackRows) {
m_callback.rowCompleted(row);
}
}
}
After Change
private void handleCompleteRows(boolean force) {
if (m_callback != null) {
if (hasRow()) {
boolean complete = isFinished() || force;
List<SnmpInstId> keys = new ArrayList<SnmpInstId>(m_pendingData.keySet());
for (int i = 0; i < keys.size(); i++) {
SnmpInstId key = keys.get(i);
SnmpRowResult row = m_pendingData.get(key);
if (row != null) {
if (complete || row.isComplete()) {
complete = true;
m_pendingData.remove(key);
m_callback.rowCompleted(row);
}
}
}